package project.rbac.domain.vo;

import project.rbac.domain.entity.Role;
import project.rbac.domain.enums.RoleDataScope;
import project.rbac.util.DateTimeUtils;

import java.time.LocalDateTime;

/**
 * 视图对象类型-角色
 *
 * @author 刘嘉薏
 * @since 2025/4/23 22:34
 */
public class RoleVo extends  BaseVo{
    /**
     * 角色名称
     */
    public String name;
    /**
     * 角色数据访问范围
     */
    public RoleDataScope dataScope;
    public RoleVo() {
    }

    public RoleVo(Integer id, LocalDateTime createAt, LocalDateTime updateAt, String name, RoleDataScope dataScope) {
        super(id, createAt, updateAt);
        this.name = name;
        this.dataScope = dataScope;
    }

    @Override
    public String toString() {
        return String.format("ID：%d，名称：%s，数据访问范围：%s，更新时间：%s", id, name, dataScope,
                DateTimeUtils.format(updateAt));
    }
}
